﻿using System.Collections.Generic;

namespace Cms.Domain.RepositoryInterfaces
{
    public interface IAdministratorRepository
    {
        Administrator GetAdministrator(int id);

        Administrator GetAdministrator(string username, string password);

        void SaveAdministrator(Administrator administrator);

        IList<AdministratorGroup> GetGroups();

        IList<AdministratorGroup> GetCustomGroups();

        IList<Administrator> GetAdministrators();

        AdministratorGroup GetGroup(int id);

        void SaveGroup(AdministratorGroup group);

        void DeleteGroup(int id);

        void DeleteAdministrator(int id);

        bool UsernameExists(string username, int id);
    }
}